1. Field of the Invention
This invention relates generally to error detection and correction devices, and more particularly to devices and methods for determining erasure locations for interleaves from thermal asperity events.
2. Description of the Related Art
Modem computer systems generally include one or more hard disk drives to store data and programs. Hard disk drives typically store information in sequence using magnetic technology. Like most recording technology, reading the sequential data bits from a hard disk often generates errors due to noise, manufacturing imperfections of the physical medium, dust, etc.
To detect and correct such errors, hard disk drives typically implement an error correction code (ECC) scheme in writing to and reading from magnetic disk drives such as a hard disk drive. These magnetic disk drives generally include error detection ad correction circuitry that implement ECC schemes using well known codes such as Reed-Solomon code to encode user data for reliable recovery of the original data through an ECC decoder. This helps to achieve a higher areal density.
Prior Art FIG. 1 illustrates a block diagram of a conventional computer system 100 including a hard disk drive 102 and a host computer 104. The host computer 104 receives user data from a hard disk drive 102. A hard disk 106 in the hard disk drive 102 contains data laid out in a plurality of sectors along a plurality of tracks. When reading data from the hard disk 106, the hard disk drive 102 rotates the hard disk 106 by means of a motor 122 and employs an actuator 120 to search for a track and sectors that contain the desired data. Upon finding the desired sectors, the read/write head 116 attached to the actuator 120 sequentially reads the data from the disk 106 to generate analog read signal (e.g., analog data signal). An amplifier 108 is coupled to the read/write head 116 to receive the read signal. The amplifier 108 amplifies the received analog read signal and transmits the amplified read signal to a read channel circuitry 110.
The read channel circuitry 110 includes an analog-to-digital converter (ADC) 112. The read channel circuitry 110 uses the ADC 112 to convert the amplified read signals into digital data bits. The read channel circuitry 110 then transmits the digital data to a deserializer 116. The deserializer 116 receives the sequential data and converts the data into a series of blocks called sectors, each of which is typically 512 bytes of user data and ECC bytes appended to the user data bytes. The deserializer 116 sequentially transmits the sectors to an error detection and correction (EDAC) circuitry 118. The EDAC circuitry 118 detects errors in the received sector and, if correctable, corrects the detected errors using an ECC scheme. Typically, the EDAC circuitry 118 employs conventional Reed-Solomon code in its ECC scheme to encode user data for reliable recovery of the original data. The EDAC circuitry 118 then transmits the error corrected user data to the host computer 104.
In reading from the hard disk 106 however, the read/write head 116 often encounters an asperity on the surface of the hard disk 106. In such an event, the asperity typically causes a sudden shift (e.g., rise in voltage) in the base line of the read signal, which decays exponentially. To detect such thermal asperity (TA) event, the read channel circuitry may include a TA detector 114, which detects a TA event when the read signal deviates from a predetermined signal voltage by a specified amount.
Additionally, modern ECC schemes typically implement interleaving to break up error bursts. In a typical ECC scheme, a conventional ECC decoder decodes errors on an interleave basis. For example in an i-way (i.e., i degree) interleave, the ECC decoder decodes errors on ith data bytes independent of other non-ith data bytes.
Thus, what is needed is a method and apparatus that can record thermal asperity erasure pointer information for interleaved ECC codes. In addition, what is needed is a a method and apparatus that can efficiently extract thermal asperity erasure pointer information for interleaved ECC decoding.
Broadly speaking, the present invention fills these needs by providing an apparatus and method for generating erasure locations of interleaves, which are being decoded. It should be appreciated that the present invention can be implemented in numerous ways, including as a process, an apparatus, a system, a device, a method, or a computer readable medium. Several inventive embodiments of the present invention are described below.
In one embodiment, the present invention provides a thermal asperity pointer processing apparatus for processing apparatus for generating erasure locations from a thermal asperity signal. The thermal asperity signal indicates an error burst in an interleaved data sector. The apparatus includes a thermal asperity pointer recorder, a storage unit, and a thermal asperity pointer processing unit. The thermal asperity pointer recorder is adapted to receive a thermal asperity signal and is configured to generate a thermal asperity event information associated with the thermal asperity signal. The thermal asperity event information includes a thermal asperity duration, a starting interleave number, and a starting interleave address of the thermal asperity signal in the interleaved data sector. The storage unit is configured to receive the thermal asperity event information from the thermal asperity pointer recorder and is configured to store the thermal asperity duration, starting interleave number, and starting interleave address associated with the thermal asperity signal. The thermal asperity pointer processing unit is coupled to receive the thermal asperity event information from the storage unit and is adapted to generate the erasure locations for interleaves corresponding to the error burst in the data sector.
In another embodiment, the present invention provides a method for generating erasure locations from a thermal asperity signal that indicates an error burst in a data sector having a plurality of interleaved data bytes. The method includes: (a) receiving a thermal asperity signal; (b) determining a thermal asperity event information that characterizes the received thermal asperity signal; (c) storing the thermal asperity event information; (d) accessing the stored thermal asperity event information; and (e) determining erasure locations for the interleaved data bytes from the stored thermal asperity event information.
In yet another embodiment, an apparatus for generating erasure locations from a thermal asperity signal is disclosed. The thermal asperity signal indicates an error burst in a data sector having a plurality of interleaved data bytes. The apparatus includes means (a) means for receiving a thermal asperity signal; (b) means for determining a thermal asperity event information that characterizes the received thermal asperity signal; (c) means for storing the thermal asperity event information; and (d) means for determining erasure locations for the interleaved data bytes from the stored thermal asperity event information.
The apparatus and method of the present invention advantageously employs thermal asperity signals to generate and record thermal asperity event information including a starting interleave number, a starting interleave address, and a length of the signal. In addition, the present invention accesses the stored thermal asperity event information to generate interleave erasure locations for associated data bytes being decoded on-the-fly. The use of the thermal asperity signal to generate interleave erasure locations as described herein allows efficient processing of interleaved sector data bytes by utilizing the conventional thermal asperity signals. Other aspects and advantages of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention.